package cn.lingyangwl.agile.pay.pay.channel;

import cn.lingyangwl.agile.pay.constant.IfCodeEnum;
import cn.lingyangwl.agile.pay.pay.model.bo.MchAppConfigContext;
import com.alibaba.fastjson2.JSONObject;

/**
 * 301方式获取渠道侧用户ID， 如微信openId 支付宝的userId等
 *
 * @author shneguangyang
 */
public interface IChannelUserService {

    /**
     * 获取到接口code
     */
    IfCodeEnum getIfCode();

    /**
     * 获取重定向地址
     */
    String buildUserRedirectUrl(String callbackUrlEncode, MchAppConfigContext mchAppConfigContext);

    /**
     * 获取渠道用户ID
     */
    String getChannelUserId(JSONObject reqParams, MchAppConfigContext mchAppConfigContext);
}
